本章主要介绍了基准测试和性能调优的相关内容。这里提到了使用基准测试主要是为了防止应用程序的性能在开发过程中发生退化,而且相比于处理整个应用程序,对其中的某一部分进行分析、测试会方便得多;之后重点强调了在商业软件开发中,制定性能目标的重要性,以及基准测试在这其中所能发挥的重要作用;另外,在基准测试套件中集成一些第三方应用程序,有助于基准测试的展开。
在5.2.3节中对微基准测试及其使用场景做了简单介绍,并在5.3节中介绍了确定测试目标的重要性。
为了定位应用程序的性能瓶颈,并确保相关措施确实能解决性能瓶颈,对应用程序做性能分析是很有必要的。性能分析可以按照复杂度和侵入性划分为不同的级别。就JRockit来说,使用JRockit Mission Control套件可以以较小的代价对应用程序的性能做详细分析。
本章中还对几种SPEC基准测试套件及其各自特点做了简单介绍。
在知晓了应用程序的运行行为后,可以根据实际情况决定,是单纯靠调整JVM来提升性能,还是需要重写应用程序的某些功能模块。本章以JRockit为例,对与内存系统和代码生成器等JVM组件的命令行参数做了介绍。
最后,本章对Java应用程序中常见的性能瓶颈和反模型进行了介绍,并讨论了规避这些问题的方法。
到这里,本书的第一部分就此完结。在下一部分中,将会对JRockit Mission Control这个强大的工具做详细介绍。期望本章中的内容可以帮助读者理解基准测试的作用,以及如何使用正确的工具解决性能问题。